A raíz de la noticia de que Clear, la novedosa aplicación de gestión de tareas para iPhone ha alcanzado las 350.000 descargas en nueve días, este fin de semana he investigado qué hay que pasos deben seguirse para desarrollar una app.
Además de la idea para tu aplicación, lo primero que hay que hacer es descargar Xcode. Xcode es el entorno de desarrollo de Apple para sus aplicaciones; no sólo iOS, sino también para su sistema operativo de escritorio. Desgraciadamente, sólo hay versión para Mac, de manera que no he encontrado la forma de desarrollar aplicaciones para Mac y/o iOS desde Windows o Linux.
La descarga de Xcode y del SDK de iOS son gratuitas. Sin embargo, si quieres publicar tu app en la Apple Store, tienes que pagar 99USD por año como desarrollador individual. Teniendo en cuenta que la instalación desde la AppStore es la única vía oficial de instalar la aplicación, esto supone un peaje ineludible para conseguir que tu aplicación se distribuya (una vez haya pasado el proceso de aprobación de Apple).
En dispositivos jailbreakeados, es posible realizar la instalación por otras vías, pero digamos que éste no es un canal en el que probablemente vayas a obtener beneficios.
Supongamos que decides enfrentarte a cada problema a su debido tiempo; primero, crear la aplicación. Luego, ya veremos... A la hora de crear la aplicación, parece que Cocos2D es un framework de desarrollo de juegos en dos dimensiones. El framework es opensource y trabaja junto a Xcode. También está Unity, más profesional y orientado a juegos 3D (y además, no está restringido a la creación de juegos en iPhone). El problema de Unity es que, aunque tienen una versión gratuita, el módulo de desarrollo para iPhone cuesta 400USD. Si quieres desarrollar para Android, tienes que desembolsar otros 400USD. Unity tiene una versión Pro, con un precio de salida de 1500USD, al que, de nuevo, tienes que añadir otros 1500USD por cada módulo (Android o iOS).
La versión Free (que incluye las versiones de prueba de las herramientas de creación para Android la puedes descargar desde http://unity3d.com/unity/download/ (son unos 504MB) y permite crear juegos realmente espectaculares siguiendo los tutoriales en http://unity3d.com/gallery/demos/demo-projects.
La pega que le encuentro es que requiere un plugin para visualizarse en el navegador (y el precio de las herramientas de desarrollo para dispositivos móviles).
El desarrollo de aplicaciones para Android se realiza, por lo que he visto, en Java. Java siempre me ha
parecido ultrafrarragoso, así que lo evitaré tanto como pueda.
Buscando información al respecto, he encontrado Corona, un SDK que permite crear código para las diferentes plataformas (incluida Android), aunque de nuevo, a 199USD por año (si queremos restringirnos a un tipo de dispositivo)... Por lo visto, la creación de aplicaciones se realiza en Lua, un lenguaje interpretado que supongo que después se convertirá al código nativo de cada plataforma... Esta, como ves, sería la única ventaja (al evitar Java)
Sin embargo, la existencia de Corona significa que es probable que existan otras alternativas que permitan crear aplicaciones en otros lenguajes de programación, lo que puede ser interesante...
De momento, dejo aquí estos apuntes para -quizás- volver a mirar con detalle el tema del desarrollo de aplicaciones para dispositivos móviles en el futuro.
Desarrollando para dispositivos iOS
Además de la idea para tu aplicación, lo primero que hay que hacer es descargar Xcode. Xcode es el entorno de desarrollo de Apple para sus aplicaciones; no sólo iOS, sino también para su sistema operativo de escritorio. Desgraciadamente, sólo hay versión para Mac, de manera que no he encontrado la forma de desarrollar aplicaciones para Mac y/o iOS desde Windows o Linux.
La descarga de Xcode y del SDK de iOS son gratuitas. Sin embargo, si quieres publicar tu app en la Apple Store, tienes que pagar 99USD por año como desarrollador individual. Teniendo en cuenta que la instalación desde la AppStore es la única vía oficial de instalar la aplicación, esto supone un peaje ineludible para conseguir que tu aplicación se distribuya (una vez haya pasado el proceso de aprobación de Apple).
En dispositivos jailbreakeados, es posible realizar la instalación por otras vías, pero digamos que éste no es un canal en el que probablemente vayas a obtener beneficios.
Supongamos que decides enfrentarte a cada problema a su debido tiempo; primero, crear la aplicación. Luego, ya veremos... A la hora de crear la aplicación, parece que Cocos2D es un framework de desarrollo de juegos en dos dimensiones. El framework es opensource y trabaja junto a Xcode. También está Unity, más profesional y orientado a juegos 3D (y además, no está restringido a la creación de juegos en iPhone). El problema de Unity es que, aunque tienen una versión gratuita, el módulo de desarrollo para iPhone cuesta 400USD. Si quieres desarrollar para Android, tienes que desembolsar otros 400USD. Unity tiene una versión Pro, con un precio de salida de 1500USD, al que, de nuevo, tienes que añadir otros 1500USD por cada módulo (Android o iOS).
La versión Free (que incluye las versiones de prueba de las herramientas de creación para Android la puedes descargar desde http://unity3d.com/unity/download/ (son unos 504MB) y permite crear juegos realmente espectaculares siguiendo los tutoriales en http://unity3d.com/gallery/demos/demo-projects.
La pega que le encuentro es que requiere un plugin para visualizarse en el navegador (y el precio de las herramientas de desarrollo para dispositivos móviles).
Desarrollando para dispositivos Android
El desarrollo de aplicaciones para Android se realiza, por lo que he visto, en Java. Java siempre me ha
parecido ultrafrarragoso, así que lo evitaré tanto como pueda.
Buscando información al respecto, he encontrado Corona, un SDK que permite crear código para las diferentes plataformas (incluida Android), aunque de nuevo, a 199USD por año (si queremos restringirnos a un tipo de dispositivo)... Por lo visto, la creación de aplicaciones se realiza en Lua, un lenguaje interpretado que supongo que después se convertirá al código nativo de cada plataforma... Esta, como ves, sería la única ventaja (al evitar Java)
Sin embargo, la existencia de Corona significa que es probable que existan otras alternativas que permitan crear aplicaciones en otros lenguajes de programación, lo que puede ser interesante...
De momento, dejo aquí estos apuntes para -quizás- volver a mirar con detalle el tema del desarrollo de aplicaciones para dispositivos móviles en el futuro.
Comentarios